Method for dynamically allocating a device in an LPAR system

ABSTRACT

When resources are reported missing within a system they are logged in a system error log. Specifically, resources that are missing because they have been reassigned from one logical partition (LPAR) within the system to another LPAR are tagged. When diagnostics are run to resolve missing resources, the resource reconfiguration database is queried for all resources that were assigned to LPARs and now are reported as missing and a missing resource List is created. The system error log is searched for resources that are tagged as missing because of reassignment. Any tagged resource and associated child resources of the tagged resource are removed from the missing resource List thereby updating the List. Normal missing resource resolution procedures are run against the updated missing resource List.

TECHNICAL FIELD

[0001] The present invention relates in general to mainframe computersystems and in particular to mainframe computer systems that areconfigured to run multiple operating systems.

BACKGROUND INFORMATION

[0002] A mainframe computer system may be configured to run multipleoperating systems. A logical segmentation of a mainframe's memory andother resources that allow the logical segmentation to run its own copyof an operating system and associated applications is called a LogicalPartition (LPAR). LPARs are created by special hardware circuits andallow multiple system images to run in one machine. This may be multipleinstances of the same operating system or different operating systems.With respect to systems designed by International Business MachinesCorporation (“IBM”), this is known as a “virtualized System/390processor complex.” LPARs are implemented in hardware extensions. IBM'sPR/SM (“prism”), Hitachi's MLPF and Amdahl's MDF are examples of LPARs.MDF was the first to provide hardware that was the equivalent of IBM'svirtual machine (VM) operating system, which supports multiple systemimages in software. Interestingly enough, an LPAR can host VM, whichitself can host multiple operating systems.

[0003] In a dynamic LPAR system, a device currently assigned to an LPAR‘A’ may be dynamically reassigned to another LPAR ‘B’. When thishappens, the resource configuration database (Object Data Manager forthat LPAR) will indicate that the device is missing from LPAR ‘A’. Thereis considerable system overhead associated with removing a previouslyassigned resource from the LPAR as opposed to just indicating that it ismissing. Also, the resource may later be again reassigned back to theLPAR to which it was originally assigned and considerable overhead wouldagain be expended in recreating objects for the resource. If theresource has “children” attached, those children will also be listed asmissing. For example, if the resource is an asynchronous adapter(parent) the adapter also has a number of ports (children) that alsohave to be listed as missing if the parent is listed as missing.

[0004] While indicating that a previously assigned resource is missingif it is reassigned is a simple way to handle this problem, the AdvancedInteractive Executive (AIX) diagnostic subsystem normally treats aresource that is missing as potentially being caused by a hardwareproblem which would result in an unnecessary service call in theinstance of a reassigned resource. AIX is IBM Corporation's version ofthe UNIX operating system.

[0005] There is, therefore, a need for a method for managing dynamicallyreassignment of LPARs to prevent unneeded service calls without havingto change the architecture of missing resource resolution or incurringhigh system overhead by removing the resource if it is reassigned.

SUMMARY OF THE INVENTION

[0006] Resources that are reassigned in a logical partition (LPAR) of amainframe computer are tagged in a system error log as missing becauseof reassignment. When diagnostics are run to resolve resources that wereassigned to an LPAR but are now missing, the resource reconfigurationdatabase for the LPAR is searched for resources that were assigned tothe LPAR but are now listed as missing, and a missing resource List iscreated. The entries in the system error log are searched for resourcestagged as missing because of reassignment. Any resource, which appearsin the missing resource and has been tagged in the system error log asmissing, is deleted thereby updating the missing resource LIST. Also,any “child” resources associated with the tagged resources are alsoremoved from the missing resource list. Normal missing resourceresolution procedures are then run on the updated resource LIST.

[0007] The foregoing has outlined rather broadly the features andtechnical advantages of the present invention in order that the detaileddescription of the invention that follows may be better understood.Additional features and advantages of the invention will be describedhereinafter which form the subject of the claims of the invention.

BRIEF DESCRIPTION OF THE DRAWINGS

[0008] For a more complete understanding of the present invention, andthe advantages thereof, reference is now made to the followingdescriptions taken in conjunction with the accompanying drawings, inwhich:

[0009]FIG. 1 is a flow diagram of method steps according to embodimentsof the present invention; and

[0010]FIG. 2 is a system block diagram of a mainframe computer systemconfigured to use embodiments of the present invention.

DETAILED DESCRIPTION

[0011] In the following description, numerous specific details are setforth to provide a thorough understanding of the present invention.However, it will be obvious to those skilled in the art that the presentinvention maybe practiced without such specific details. In otherinstances, well-known circuits have been shown in block diagram form inorder not to obscure the present invention in unnecessary detail. Forthe most part, details concerning timing considerations and the likehave been omitted in as much as such details are not necessary to obtaina complete understanding of the present invention and are within theskills of persons of ordinary skill in the relevant art.

[0012] Refer now to the drawings wherein depicted elements are notnecessarily shown to scale and wherein like or similar elements aredesignated by the same reference numeral through the several views.

[0013] In the following detailed descriptions a resource is one elementof hardware, software or data that is part of a larger system. Forexample, network resources are the available servers and printers in thenetwork. Software resources may be programs, utilities or even smallerelements within a program. Data resources are the files and databasesthat may be accessed.

[0014] In present Advanced Interactive Executive (AIX) systems,resources that are determined to be missing are entered into the systemerror log as “just missing” without any reason. Embodiments of thepresent invention tag resources that are dynamically removed from anLPAR because of reassignment such that these “missing” resources may beidentified. Whenever an LPAR is set up and resources are assigned to theLPAR, its resource configuration database (RCD) has a feature thatindicates which resources are assigned to the LPAR. A user may use aHardware System Console (HSC) to initiate software processes thatreconfigure resources by removing them from one LPAR and adding them toanother LPAR. Embodiments of the present invention modify these softwareprocesses so that the routine that removes a resource also tags it inthe system error log so it is identified as missing from the LPARbecause of reassignment. If a resource is removed from an LPAR, a stateindicator in the RCD for the LPAR will be changed to indicate that apreviously assigned resource is no longer assigned. Likewise, if aresource does not respond within an LPAR it may have its state indicatorchanged to indicate that it is missing. If a resource does not respond,then an error condition usually exists. Diagnostic routines may be runto determine what recovery action to take. As part of the diagnosticroutines a Missing Resource Options (MRO) routine may be run to resolvemissing resources. A Missing Resource Options routine may also be run aspart of a system boot-up. In this case, the RCDs of the various LPARswithin the system would be searched to determine if the resources thatwere assigned to each LPAR has the appropriate state indicator. This isdone to determine if the system and its LPARs are in the sameconfiguration state as it was before system reboot. If a resource wasdynamically reassigned or is no longer responding, then the stateindicator in the RCD would have the same indication (indicating theresource is missing). Without embodiments of the present invention, theMRO routine creates a missing resource List that includes all missingresources for the LPAR on which the diagnostic routines are run. Thismay result in a service call to resolve which resources are missingbecause of a failure or which are just missing because of a dynamicreassignment with LPARs. However, embodiments of the present inventionidentify those resources in the system error log that are missingbecause of reassignment with a tag. The resources that have been taggedbecause of reassignment in the system error log may be compared to themissing resource List for the LPAR and these resources and anyassociated resources (child resources) are removed from the missingresource LIST. This updated missing resource List now no longer containsresources which are indicated as missing because of reassignment duringdynamic resource reassignment.

[0015]FIG. 1 is a flow diagram of method steps according to embodimentsof the present invention. In step 101, a dynamic reconfiguration of alogical partition (LPAR) within a system (see system in FIG. 2) is to beexecuted. In step 102 any reassigned resources that are removed from theLPAR are logged in a system error log and tagged as missing from theLPAR because of reassignment. The software processes that remove aresource from the LPAR are modified in embodiments of the presentinvention to also tag the resource as missing because of reassignment inthe system error log. In step 103, a test is done to determine if adiagnostic Missing Options Routine is to be run to resolve missingresources. Diagnostics may be run as part of a system boot-up or as theresult of a user action. Resolving missing resources determines thecause of missing resources and determines whether a service call isnecessary since missing resources usually indicate a hardware failure.If the result of the test in step 103 is NO, then a return is taken tostep 101. If the result of the test in step 103 is YES, then the systemdiagnostic software is being executed and Missing Resource Optionsroutines are run to resolve missing resources. In step 104, theconfiguration database for the LPAR being checked is queried forresources marked as previously assigned to the LPAR but now missing, andthe missing resources are added to a missing resource List. In step 105,the system error log is searched for missing resources that have beentagged as missing because of reassignment. In step 106, a test is doneto determine if a missing resource tagged as reassigned appears in themissing resource List of the LPAR being checked. If the result of thetest in step 106 is YES, the tagged missing resource and any associated“child” resources of the tagged missing resource are removed from themissing resource List in step 107. In step 108 a test is done todetermine if all entries in the missing resource List has been comparedto tagged missing resources in the system error log. If the result ofthe test in step 108 is NO, then a branch is taken back to step 105where searching the system error log is continued. If the result of thetest in step 108 is YES, then in step 109 normal missing resourceresolution procedures are run against the updated missing resource Listfor the LPAR then a branch is taken back to step 103 to determine if theMissing Options routine is run for another LPAR.

[0016]FIG. 2 is a high level functional block diagram of arepresentative data processing system 200 suitable for practicingprinciples of the present invention. Data processing system 200,includes a central processing system (CPU) 210 operating in conjunctionwith a system bus 212. System bus 212 operates in accordance with astandard bus protocol compatible with CPU 210. CPU 210 operates aread-only memory (ROM) 216 and a random access memory (RAM) 214. Amongother things, ROM 216 supports the Basic Input Output System (BIOS). RAM214 includes DRAM (Dynamic Random Access Memory) system memory and SRAM(Static Random Access Memory) external cache. I/O Adapter 218 allows foran interconnection between the devices (resources) on system bus 212 andexternal peripherals, such as mass storage devices (e.g., a hard drive220, floppy drive or CD-ROM drive), or a printer 240. A peripheraldevice 220 is coupled to a peripheral control interface (PCI) bus andtherefore I/O adapter 218 may be a PCI bus bridge. User interfaceadapter 222 couples various user input devices, such as a keyboard 224,or mouse 226 to the processing devices on bus 212. Display 239 may be,for example, a cathode ray tube (CRT), liquid crystal display (LCD) orsimilar conventional display units. Display adapter 236 may include,among other things, a conventional display controller and frame buffermemory. Data processing system 200 maybe selectively coupled to anothercomputer or communications network 241 through communications adapter234. Communications adapter 234 may include, for example, a modem forconnection to a telecom network and/or hardware and software forconnecting to a computer network such as a local area network (LAN) or awide area network (WAN). CPU 210 may be a processor system whichexecutes a program product that resolves missing resources that aremissing because of dynamic reassignment according to embodiments of thepresent invention. Various memory in system 100 may be configured tohost logical partitions (LPAR) operable to run application programs inconjunction with allocated resources.

[0017] Implementations of the invention include implementations as acomputer system programmed to execute the method or methods describedherein, and as a computer program product. According to the computersystem implementation, sets of instructions for executing the method ormethods described in FIG. 1 may reside in the random access memory 214of one or more computer systems configured generally as described above.Until required by the computer system, the set of instructions may bestored as a computer program product in another computer memory, forexample, in disk drive 220 (which may include a removable memory such asan optical disk or floppy disk for eventual use in the disk drive 220).Further, the computer program product can also be stored at anothercomputer and transmitted when desired to the user's work station by anetwork or by an external network such as the Internet. One skilled inthe art would appreciate that the physical storage of the sets ofinstructions physically changes the medium upon which it is stored sothat the medium carries computer readable information. The change maybeelectrical, magnetic, chemical, biological, or some other physicalchange. While it is convenient to describe the invention in terms ofinstructions, symbols, characters, or the like, the reader shouldremember that all of these and similar terms should be associated withthe appropriate physical elements.

[0018] Although the present invention and its advantages have beendescribed in detail, it should be understood that various changes,substitutions and alterations can be made herein without departing fromthe spirit and scope of the invention as defined by the appended claims.

What is claimed is:
 1. A method for managing dynamic resourcereassignment within a system comprising the steps of: tagging firstmissing resources in a system error log which are missing because ofreassignment; querying a configuration database in said system forresources identified as missing resources and adding said missingresources to a missing resource List as second missing resources;updating said missing resource List by deleting any of said tagged firstmissing resources which are included in said missing resource List assecond missing resources; and executing a missing resource optionsprocedure on missing resources in said updated missing resource List. 2.The method of claim 1, wherein said dynamic resource reassignment occursbetween logical partitions (LPARs) of said system.
 3. The method ofclaim 2, wherein said missing resources are tagged in response toreassignment from a first one of said LPARs of said system to a secondone of said LPARs of said system.
 4. The method of claim 1, wherein saidconfiguration database is a configuration database for a logicalpartition (LPAR) within said system.
 5. A computer program product formanaging dynamic resource reassignment within a system, said computerprogram product embodied in a machine readable medium, includingprogramming for a processor, said computer program comprising a programof instructions for performing the program steps of: tagging firstmissing resources in a system error log which are missing because ofreassignment; querying a configuration database in said system forresources identified as missing resources and adding said missingresources to a missing resource List as second missing resources;updating said missing resource List by deleting any of said tagged firstmissing resources which are included in said missing resource List assecond missing resources; and executing a missing resource optionsprocedure on missing resources in said updated missing resource List. 6.The computer program product of claim 5, wherein said dynamic resourcereassignment occurs between logical partitions (LPARs) of said system.7. The computer program product of claim 6, wherein said missingresources are tagged in response to reassignment from a first one ofsaid LPARs of said system to a second one of said LPARs of said system.8. The computer program product of claim 5, wherein said configurationdatabase is a configuration database for a logical partition (LPAR)within said system.
 9. A computer system comprising: a centralprocessing unit (CPU); a random access memory (RAM); a read only memory(ROM); an I/O adapter; and a bus system coupling said CPUs to said ROM,said I/O adapter, and said RAM, wherein a sub-system within saidcomputer system further comprises: circuitry for tagging first missingresources in a system error log which are missing because ofreassignment; circuitry for querying a configuration database in saidsystem for resources identified as missing resources and adding saidmissing resources to a missing resource List as second missingresources; circuitry for updating said missing resource List by deletingany of said tagged first missing resources which are included in saidmissing resource List as second missing resources; and circuitry forexecuting a missing resource options procedure on missing resources insaid updated missing resource List.
 10. The computer system of claim 9,wherein said sub-system is a logical partition (LPAR) of a said system.11. The computer system of claim 9, wherein one of said first missingresources of said system is a device coupled to said I/O adapter. 12.The computer system of claim 10, wherein said missing resources aretagged in response to reassignment from a first one of said LPARs ofsaid system to a second one of said LPARs of said system.
 13. Thecomputer system of claim 9, wherein said configuration database is aconfiguration database for a logical partition (LPAR) within saidsystem.
 14. A method for managing dynamic resource reassignment within asystem comprising the steps of: determining first missing resources thatare missing because of reassignment within said system; and updating amissing resource List by deleting any of said first missing resourceswhich are included in said missing resource List.
 15. The method ofclaim 14, where in said determining step comprises: tagging said firstmissing resources in a system error log which are missing because ofreassignment.
 16. The method of claim 14 further comprising the step of:generating said missing resource List by querying a configurationdatabase in said system for resources identified as missing resourcesand adding said missing resources to said missing resource List; andexecuting a missing resource options procedure on said missing resourcesin said updated missing resource List.
 17. The method of claim 15further comprising the step of: generating said missing resource List byquerying a configuration database in said system for resourcesidentified as missing resources and adding said missing resources tosaid missing resource List; and executing a missing resource optionsprocedure on said missing resources in said updated missing resourceList.
 18. The method of claim 14, wherein said dynamic resourcereassignment occurs between logical partitions (LPARs) of said system.19. The method of claim 15, wherein said missing resources are tagged inresponse to reassignment from a first one of said LPARs of said systemto a second one of said LPARs of said system.
 20. The method of claim16, wherein said configuration database is a configuration database fora logical partition (LPAR) within said system.
 21. A computer programproduct for managing dynamic resource reassignment within a system, saidcomputer program product embodied in a machine readable medium,including programming for a processor, said computer program comprisinga program of instructions for performing the program steps of:determining first missing resources that are missing because ofreassignment within said system; and updating a missing resource List bydeleting any of said first missing resources which are included in saidmissing resource List.
 22. The computer program product of claim 21,where in said determining step comprises: tagging said first missingresources in a system error log which are missing because ofreassignment.
 23. The computer program product of claim 21 furthercomprising the steps of: generating said missing resource List byquerying a configuration database in said system for resourcesidentified as missing resources and adding said missing resources tosaid missing resource List; and executing a missing resource optionsprocedure on said missing resources in said updated missing resourceList.
 24. The computer program product of claim 22 further comprisingthe steps of: generating said missing resource List by querying aconfiguration database in said system for resources identified asmissing resources and adding said missing resources to said missingresource List; and executing a missing resource options procedure onsaid missing resources in said updated missing resource List.
 25. Thecomputer program product of claim 21, wherein said dynamic resourcereassignment occurs between logical partitions (LPARs) of said system.26. The computer program product of claim 22, wherein said missingresources are tagged in response to reassignment from a first one ofsaid LPARs of said system to a second one of said LPARs of said system.27. The computer program product of claim 23, wherein said configurationdatabase is a configuration database for a logical partition (LPAR)within said system.
 28. A computer system comprising: a centralprocessing unit (CPU); a random access memory (RAM); a read only memory(ROM); an I/O adapter; and a bus system coupling said CPUs to said ROM,said I/O adapter, and said RAM, wherein a sub-system within saidcomputer system further comprises: circuitry for determining firstmissing resources that are missing because of reassignment within saidsystem; and circuitry for updating a missing resource List by deletingany of said first missing resources which are included in said missingresource List.
 29. The computer system of claim 28 further comprising:circuitry for tagging said first missing resources in a system error logwhich are missing because of reassignment.
 30. The computer system ofclaim 28 further comprising: circuitry for generating said missingresource List by querying a configuration database in said system forresources identified as missing resources and adding said missingresources to said missing resource List; and circuitry for executing amissing resource options procedure on said missing resources in saidupdated missing resource List.
 31. The computer system of claim 29further comprising: circuitry for generating said missing resource Listby querying a configuration database in said system for resourcesidentified as missing resources and adding said missing resources tosaid missing resource List; and circuitry for executing a missingresource options procedure on said missing resources in said updatedmissing resource List.
 32. The computer system of claim 28, wherein saiddynamic resource reassignment occurs between logical partitions (LPARs)of said system.
 33. The computer system of claim 29, wherein saidmissing resources are tagged in response to reassignment from a firstone of said LPARs of said system to a second one of said LPARs of saidsystem.
 34. The computer system of claim 30, wherein said configurationdatabase is a configuration database for a logical partition (LPAR)within said system.
 35. The computer system of claim 31, wherein saidconfiguration database is a configuration database for a logicalpartition (LPAR) within said system.